package com.yystudy.maker.template.model;

import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * @author: yp123
 * @since: 2025/10/13
 * 模板文件配置
 */
@Data
public class TemplateMakerFileConfig {

    /**
     * 文件列表
     */
    private List<FileInfoConfig> files;

    /**
     * 文件分组配置
     */
    private FileGroupConfig fileGroupConfig;

    @NoArgsConstructor
    @Data
    public static class FileInfoConfig {

        /**
         * 文件或目录路径
         */
        private String path;

        /**
         * 单个文件过滤条件
         */
        private String condition;

        /**
         * 分组文件过滤条件
         */
        private List<FileFilterConfig> filterConfigList;
    }

    @Data
    public static class FileGroupConfig {

        /**
         * 文件分组条件
         */
        private String condition;

        /**
         * 文件分组字段
         */
        private String groupKey;

        /**
         * 文件分组名称
         */
        private String groupName;
    }
}
